home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / game / h_stripe / editer.bas < prev    next >
BASIC Source File  |  1993-07-08  |  3KB  |  96 lines

  1. 1 N=8:CLEAR,,,(N+1)*40000:DEFINT A-Z
  2. 2 N=8 '※1行目と2行目の N は、同時に変更すること。
  3. 10 DIM QUE$(N,500),EX$(N,500,3),ANS(N,500),LIM(N)
  4. 20 WINDOW:VIEW:CLS:CONSOLE 0,24,2:COLOR 4
  5. 30 PRINT"データ読み込み中......"
  6. 40 FOR I=0 TO N:J=0
  7. 50  OPEN "I",1,"QUIZ"+RIGHT$(STR$(I),1)
  8. 60  INPUT#1,A$
  9. 70  IF A$="*" THEN J=J+1:GOTO 130 ELSE QUE$(I,J)=A$
  10. 80  FOR K=0 TO 3
  11. 90   INPUT#1,EX$(I,J,K)
  12. 100  NEXT K
  13. 110  INPUT#1,ANS(I,J)
  14. 120  J=J+1:IF J=<500 THEN 60
  15. 130  CLOSE:LIM(I)=J-1
  16. 140 NEXT I
  17. 150 '
  18. 160 INPUT"何番のファイルを編集しますか(0-"+STR$(N)+")",A
  19. 170 IF A>N OR A<0 THEN 160
  20. 180 X=A:YY=LIM(X)-1
  21. 190 PRINT"問題の数は";LIM(X);"個です。"
  22. 200 '
  23. 210 INPUT"(0.作成 1.修正 2.セーブ 3.一覧 4.終了)",A
  24. 220 ON A+1 GOSUB *SAKUSEI,*SHUSEI,*SAVE,*ITIRAN,*OWARI
  25. 230 GOTO 210
  26. 240 *SAKUSEI
  27. 250 YY=YY+1:Y=YY
  28. 260 PRINT"No.";Y
  29. 270 GOSUB *MONDAI
  30. 280 GOSUB *KOTAE
  31. 290 GOSUB *KAITOU
  32. 300 RETURN
  33. 310 *SHUSEI
  34. 320 INPUT"何番の問題を修正しますか (0-"+STR$(YY)+")",A
  35. 330 IF A<0 OR A>YY THEN 320
  36. 340 Y=A
  37. 350 PRINT"No.";Y
  38. 360 PRINT"問題  ";QUE$(X,Y)
  39. 370 FOR I=0 TO 3
  40. 380  PRINT"選択肢";I+1;" ";EX$(X,Y,I)
  41. 390 NEXT
  42. 400 PRINT"解答 ";ANS(X,Y)+1
  43. 410 GOSUB *MONDAI
  44. 420 GOSUB *KOTAE
  45. 430 GOSUB *KAITOU
  46. 440 RETURN
  47. 450 *SAVE
  48. 460  KILL"QUIZ"+RIGHT$(STR$(X),1):J=0
  49. 470  OPEN "O",1,"QUIZ"+RIGHT$(STR$(X),1)
  50. 480  PRINT#1,QUE$(X,J)
  51. 490  FOR K=0 TO 3
  52. 500   PRINT#1,EX$(X,J,K)
  53. 510  NEXT K
  54. 520  PRINT#1,ANS(X,J)
  55. 530  J=J+1:IF J<YY+1 THEN 480
  56. 540  PRINT#1,"*"
  57. 550  CLOSE
  58. 560 PRINT"セーブが終了しました。"
  59. 570 LIM(X)=YY+1
  60. 580 RETURN
  61. 590 *OWARI
  62. 600 INPUT"セーブしますか(Y/N)";A$
  63. 610 IF A$="Y" THEN GOSUB *SAVE ELSE IF A$="N" ELSE 600
  64. 620 INPUT"他のファイルを編集しますか(Y/N)";A$
  65. 630 IF A$="Y" THEN 160 ELSE IF A$="N" END ELSE 620
  66. 640 *MONDAI
  67. 650 PRINT"問題文を入力してください(全角文字で35文字以内)"
  68. 660 INPUT A$
  69. 670 IF LEN(A$)>70 THEN PRINT"長すぎます":GOTO 650
  70. 680 IF A$<>"" THEN QUE$(X,Y)=A$ ELSE PRINT QUE$(X,Y)
  71. 690 RETURN
  72. 700 *KOTAE
  73. 710 FOR I=0 TO 3
  74. 720  INPUT"選択肢"+STR$(I+1)+"を入力してください ",A$
  75. 730  IF LEN(A$)>60 THEN PRINT"長すぎます":GOTO 720
  76. 740  IF A$<>"" THEN EX$(X,Y,I)=A$ ELSE PRINT EX$(X,Y,I)
  77. 750 NEXT
  78. 760 RETURN
  79. 770 *KAITOU
  80. 780 INPUT"解答の番号を入力してください(1-4)",A$
  81. 790 IF A$<>"" THEN A=VAL(A$) ELSE PRINT ANS(X,Y)+1:GOTO 820
  82. 800 IF A<1 OR A>4 THEN 780
  83. 810 ANS(X,Y)=A-1
  84. 820 RETURN 
  85. 830 *ITIRAN
  86. 831 INPUT"何番目から表示しますか";A
  87. 832 IF A<0 OR A>YY THEN 831
  88. 840 FOR I=A TO YY
  89. 850  PRINT I;SPACE$(2);QUE$(X,I)
  90. 860  IF I MOD 22 =21 THEN ELSE 900
  91. 870  PRINT"(キーを押してください[Cキーで中止])"
  92. 880  A$=INKEY$
  93. 890  IF A$="C" THEN I=YY ELSE IF A$="" THEN 880
  94. 900 NEXT
  95. 910 RETURN
  96.